package net.yunxinyong.cec.entity;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class Cec705TwoEntityExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public Cec705TwoEntityExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andBaseIdIsNull() {
            addCriterion("base_id is null");
            return (Criteria) this;
        }

        public Criteria andBaseIdIsNotNull() {
            addCriterion("base_id is not null");
            return (Criteria) this;
        }

        public Criteria andBaseIdEqualTo(Integer value) {
            addCriterion("base_id =", value, "baseId");
            return (Criteria) this;
        }

        public Criteria andBaseIdNotEqualTo(Integer value) {
            addCriterion("base_id <>", value, "baseId");
            return (Criteria) this;
        }

        public Criteria andBaseIdGreaterThan(Integer value) {
            addCriterion("base_id >", value, "baseId");
            return (Criteria) this;
        }

        public Criteria andBaseIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("base_id >=", value, "baseId");
            return (Criteria) this;
        }

        public Criteria andBaseIdLessThan(Integer value) {
            addCriterion("base_id <", value, "baseId");
            return (Criteria) this;
        }

        public Criteria andBaseIdLessThanOrEqualTo(Integer value) {
            addCriterion("base_id <=", value, "baseId");
            return (Criteria) this;
        }

        public Criteria andBaseIdIn(List<Integer> values) {
            addCriterion("base_id in", values, "baseId");
            return (Criteria) this;
        }

        public Criteria andBaseIdNotIn(List<Integer> values) {
            addCriterion("base_id not in", values, "baseId");
            return (Criteria) this;
        }

        public Criteria andBaseIdBetween(Integer value1, Integer value2) {
            addCriterion("base_id between", value1, value2, "baseId");
            return (Criteria) this;
        }

        public Criteria andBaseIdNotBetween(Integer value1, Integer value2) {
            addCriterion("base_id not between", value1, value2, "baseId");
            return (Criteria) this;
        }

        public Criteria andEnergyNameIsNull() {
            addCriterion("energy_name is null");
            return (Criteria) this;
        }

        public Criteria andEnergyNameIsNotNull() {
            addCriterion("energy_name is not null");
            return (Criteria) this;
        }

        public Criteria andEnergyNameEqualTo(String value) {
            addCriterion("energy_name =", value, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameNotEqualTo(String value) {
            addCriterion("energy_name <>", value, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameGreaterThan(String value) {
            addCriterion("energy_name >", value, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameGreaterThanOrEqualTo(String value) {
            addCriterion("energy_name >=", value, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameLessThan(String value) {
            addCriterion("energy_name <", value, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameLessThanOrEqualTo(String value) {
            addCriterion("energy_name <=", value, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameLike(String value) {
            addCriterion("energy_name like", value, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameNotLike(String value) {
            addCriterion("energy_name not like", value, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameIn(List<String> values) {
            addCriterion("energy_name in", values, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameNotIn(List<String> values) {
            addCriterion("energy_name not in", values, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameBetween(String value1, String value2) {
            addCriterion("energy_name between", value1, value2, "energyName");
            return (Criteria) this;
        }

        public Criteria andEnergyNameNotBetween(String value1, String value2) {
            addCriterion("energy_name not between", value1, value2, "energyName");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitIsNull() {
            addCriterion("measurement_unit is null");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitIsNotNull() {
            addCriterion("measurement_unit is not null");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitEqualTo(String value) {
            addCriterion("measurement_unit =", value, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitNotEqualTo(String value) {
            addCriterion("measurement_unit <>", value, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitGreaterThan(String value) {
            addCriterion("measurement_unit >", value, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitGreaterThanOrEqualTo(String value) {
            addCriterion("measurement_unit >=", value, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitLessThan(String value) {
            addCriterion("measurement_unit <", value, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitLessThanOrEqualTo(String value) {
            addCriterion("measurement_unit <=", value, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitLike(String value) {
            addCriterion("measurement_unit like", value, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitNotLike(String value) {
            addCriterion("measurement_unit not like", value, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitIn(List<String> values) {
            addCriterion("measurement_unit in", values, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitNotIn(List<String> values) {
            addCriterion("measurement_unit not in", values, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitBetween(String value1, String value2) {
            addCriterion("measurement_unit between", value1, value2, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andMeasurementUnitNotBetween(String value1, String value2) {
            addCriterion("measurement_unit not between", value1, value2, "measurementUnit");
            return (Criteria) this;
        }

        public Criteria andCodeIsNull() {
            addCriterion("code is null");
            return (Criteria) this;
        }

        public Criteria andCodeIsNotNull() {
            addCriterion("code is not null");
            return (Criteria) this;
        }

        public Criteria andCodeEqualTo(String value) {
            addCriterion("code =", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotEqualTo(String value) {
            addCriterion("code <>", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThan(String value) {
            addCriterion("code >", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThanOrEqualTo(String value) {
            addCriterion("code >=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThan(String value) {
            addCriterion("code <", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThanOrEqualTo(String value) {
            addCriterion("code <=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLike(String value) {
            addCriterion("code like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotLike(String value) {
            addCriterion("code not like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeIn(List<String> values) {
            addCriterion("code in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotIn(List<String> values) {
            addCriterion("code not in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeBetween(String value1, String value2) {
            addCriterion("code between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotBetween(String value1, String value2) {
            addCriterion("code not between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionIsNull() {
            addCriterion("consumption_industrial_production is null");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionIsNotNull() {
            addCriterion("consumption_industrial_production is not null");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionEqualTo(BigDecimal value) {
            addCriterion("consumption_industrial_production =", value, "consumptionIndustrialProduction");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionNotEqualTo(BigDecimal value) {
            addCriterion("consumption_industrial_production <>", value, "consumptionIndustrialProduction");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionGreaterThan(BigDecimal value) {
            addCriterion("consumption_industrial_production >", value, "consumptionIndustrialProduction");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("consumption_industrial_production >=", value, "consumptionIndustrialProduction");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionLessThan(BigDecimal value) {
            addCriterion("consumption_industrial_production <", value, "consumptionIndustrialProduction");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionLessThanOrEqualTo(BigDecimal value) {
            addCriterion("consumption_industrial_production <=", value, "consumptionIndustrialProduction");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionIn(List<BigDecimal> values) {
            addCriterion("consumption_industrial_production in", values, "consumptionIndustrialProduction");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionNotIn(List<BigDecimal> values) {
            addCriterion("consumption_industrial_production not in", values, "consumptionIndustrialProduction");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("consumption_industrial_production between", value1, value2, "consumptionIndustrialProduction");
            return (Criteria) this;
        }

        public Criteria andConsumptionIndustrialProductionNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("consumption_industrial_production not between", value1, value2, "consumptionIndustrialProduction");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputIsNull() {
            addCriterion("Processing_conversion_input is null");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputIsNotNull() {
            addCriterion("Processing_conversion_input is not null");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputEqualTo(BigDecimal value) {
            addCriterion("Processing_conversion_input =", value, "processingConversionInput");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputNotEqualTo(BigDecimal value) {
            addCriterion("Processing_conversion_input <>", value, "processingConversionInput");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputGreaterThan(BigDecimal value) {
            addCriterion("Processing_conversion_input >", value, "processingConversionInput");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("Processing_conversion_input >=", value, "processingConversionInput");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputLessThan(BigDecimal value) {
            addCriterion("Processing_conversion_input <", value, "processingConversionInput");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputLessThanOrEqualTo(BigDecimal value) {
            addCriterion("Processing_conversion_input <=", value, "processingConversionInput");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputIn(List<BigDecimal> values) {
            addCriterion("Processing_conversion_input in", values, "processingConversionInput");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputNotIn(List<BigDecimal> values) {
            addCriterion("Processing_conversion_input not in", values, "processingConversionInput");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Processing_conversion_input between", value1, value2, "processingConversionInput");
            return (Criteria) this;
        }

        public Criteria andProcessingConversionInputNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Processing_conversion_input not between", value1, value2, "processingConversionInput");
            return (Criteria) this;
        }

        public Criteria andThermalPowerIsNull() {
            addCriterion("thermal_power is null");
            return (Criteria) this;
        }

        public Criteria andThermalPowerIsNotNull() {
            addCriterion("thermal_power is not null");
            return (Criteria) this;
        }

        public Criteria andThermalPowerEqualTo(BigDecimal value) {
            addCriterion("thermal_power =", value, "thermalPower");
            return (Criteria) this;
        }

        public Criteria andThermalPowerNotEqualTo(BigDecimal value) {
            addCriterion("thermal_power <>", value, "thermalPower");
            return (Criteria) this;
        }

        public Criteria andThermalPowerGreaterThan(BigDecimal value) {
            addCriterion("thermal_power >", value, "thermalPower");
            return (Criteria) this;
        }

        public Criteria andThermalPowerGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thermal_power >=", value, "thermalPower");
            return (Criteria) this;
        }

        public Criteria andThermalPowerLessThan(BigDecimal value) {
            addCriterion("thermal_power <", value, "thermalPower");
            return (Criteria) this;
        }

        public Criteria andThermalPowerLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thermal_power <=", value, "thermalPower");
            return (Criteria) this;
        }

        public Criteria andThermalPowerIn(List<BigDecimal> values) {
            addCriterion("thermal_power in", values, "thermalPower");
            return (Criteria) this;
        }

        public Criteria andThermalPowerNotIn(List<BigDecimal> values) {
            addCriterion("thermal_power not in", values, "thermalPower");
            return (Criteria) this;
        }

        public Criteria andThermalPowerBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thermal_power between", value1, value2, "thermalPower");
            return (Criteria) this;
        }

        public Criteria andThermalPowerNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thermal_power not between", value1, value2, "thermalPower");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyIsNull() {
            addCriterion("heat_supply is null");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyIsNotNull() {
            addCriterion("heat_supply is not null");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyEqualTo(BigDecimal value) {
            addCriterion("heat_supply =", value, "heatSupply");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyNotEqualTo(BigDecimal value) {
            addCriterion("heat_supply <>", value, "heatSupply");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyGreaterThan(BigDecimal value) {
            addCriterion("heat_supply >", value, "heatSupply");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("heat_supply >=", value, "heatSupply");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyLessThan(BigDecimal value) {
            addCriterion("heat_supply <", value, "heatSupply");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("heat_supply <=", value, "heatSupply");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyIn(List<BigDecimal> values) {
            addCriterion("heat_supply in", values, "heatSupply");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyNotIn(List<BigDecimal> values) {
            addCriterion("heat_supply not in", values, "heatSupply");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("heat_supply between", value1, value2, "heatSupply");
            return (Criteria) this;
        }

        public Criteria andHeatSupplyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("heat_supply not between", value1, value2, "heatSupply");
            return (Criteria) this;
        }

        public Criteria andCoalWashingIsNull() {
            addCriterion("coal_washing is null");
            return (Criteria) this;
        }

        public Criteria andCoalWashingIsNotNull() {
            addCriterion("coal_washing is not null");
            return (Criteria) this;
        }

        public Criteria andCoalWashingEqualTo(BigDecimal value) {
            addCriterion("coal_washing =", value, "coalWashing");
            return (Criteria) this;
        }

        public Criteria andCoalWashingNotEqualTo(BigDecimal value) {
            addCriterion("coal_washing <>", value, "coalWashing");
            return (Criteria) this;
        }

        public Criteria andCoalWashingGreaterThan(BigDecimal value) {
            addCriterion("coal_washing >", value, "coalWashing");
            return (Criteria) this;
        }

        public Criteria andCoalWashingGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("coal_washing >=", value, "coalWashing");
            return (Criteria) this;
        }

        public Criteria andCoalWashingLessThan(BigDecimal value) {
            addCriterion("coal_washing <", value, "coalWashing");
            return (Criteria) this;
        }

        public Criteria andCoalWashingLessThanOrEqualTo(BigDecimal value) {
            addCriterion("coal_washing <=", value, "coalWashing");
            return (Criteria) this;
        }

        public Criteria andCoalWashingIn(List<BigDecimal> values) {
            addCriterion("coal_washing in", values, "coalWashing");
            return (Criteria) this;
        }

        public Criteria andCoalWashingNotIn(List<BigDecimal> values) {
            addCriterion("coal_washing not in", values, "coalWashing");
            return (Criteria) this;
        }

        public Criteria andCoalWashingBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coal_washing between", value1, value2, "coalWashing");
            return (Criteria) this;
        }

        public Criteria andCoalWashingNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coal_washing not between", value1, value2, "coalWashing");
            return (Criteria) this;
        }

        public Criteria andCoalCokingIsNull() {
            addCriterion("coal_coking is null");
            return (Criteria) this;
        }

        public Criteria andCoalCokingIsNotNull() {
            addCriterion("coal_coking is not null");
            return (Criteria) this;
        }

        public Criteria andCoalCokingEqualTo(BigDecimal value) {
            addCriterion("coal_coking =", value, "coalCoking");
            return (Criteria) this;
        }

        public Criteria andCoalCokingNotEqualTo(BigDecimal value) {
            addCriterion("coal_coking <>", value, "coalCoking");
            return (Criteria) this;
        }

        public Criteria andCoalCokingGreaterThan(BigDecimal value) {
            addCriterion("coal_coking >", value, "coalCoking");
            return (Criteria) this;
        }

        public Criteria andCoalCokingGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("coal_coking >=", value, "coalCoking");
            return (Criteria) this;
        }

        public Criteria andCoalCokingLessThan(BigDecimal value) {
            addCriterion("coal_coking <", value, "coalCoking");
            return (Criteria) this;
        }

        public Criteria andCoalCokingLessThanOrEqualTo(BigDecimal value) {
            addCriterion("coal_coking <=", value, "coalCoking");
            return (Criteria) this;
        }

        public Criteria andCoalCokingIn(List<BigDecimal> values) {
            addCriterion("coal_coking in", values, "coalCoking");
            return (Criteria) this;
        }

        public Criteria andCoalCokingNotIn(List<BigDecimal> values) {
            addCriterion("coal_coking not in", values, "coalCoking");
            return (Criteria) this;
        }

        public Criteria andCoalCokingBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coal_coking between", value1, value2, "coalCoking");
            return (Criteria) this;
        }

        public Criteria andCoalCokingNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coal_coking not between", value1, value2, "coalCoking");
            return (Criteria) this;
        }

        public Criteria andCoalOilIsNull() {
            addCriterion("coal_oil is null");
            return (Criteria) this;
        }

        public Criteria andCoalOilIsNotNull() {
            addCriterion("coal_oil is not null");
            return (Criteria) this;
        }

        public Criteria andCoalOilEqualTo(BigDecimal value) {
            addCriterion("coal_oil =", value, "coalOil");
            return (Criteria) this;
        }

        public Criteria andCoalOilNotEqualTo(BigDecimal value) {
            addCriterion("coal_oil <>", value, "coalOil");
            return (Criteria) this;
        }

        public Criteria andCoalOilGreaterThan(BigDecimal value) {
            addCriterion("coal_oil >", value, "coalOil");
            return (Criteria) this;
        }

        public Criteria andCoalOilGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("coal_oil >=", value, "coalOil");
            return (Criteria) this;
        }

        public Criteria andCoalOilLessThan(BigDecimal value) {
            addCriterion("coal_oil <", value, "coalOil");
            return (Criteria) this;
        }

        public Criteria andCoalOilLessThanOrEqualTo(BigDecimal value) {
            addCriterion("coal_oil <=", value, "coalOil");
            return (Criteria) this;
        }

        public Criteria andCoalOilIn(List<BigDecimal> values) {
            addCriterion("coal_oil in", values, "coalOil");
            return (Criteria) this;
        }

        public Criteria andCoalOilNotIn(List<BigDecimal> values) {
            addCriterion("coal_oil not in", values, "coalOil");
            return (Criteria) this;
        }

        public Criteria andCoalOilBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coal_oil between", value1, value2, "coalOil");
            return (Criteria) this;
        }

        public Criteria andCoalOilNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coal_oil not between", value1, value2, "coalOil");
            return (Criteria) this;
        }

        public Criteria andCoalGasIsNull() {
            addCriterion("coal_gas is null");
            return (Criteria) this;
        }

        public Criteria andCoalGasIsNotNull() {
            addCriterion("coal_gas is not null");
            return (Criteria) this;
        }

        public Criteria andCoalGasEqualTo(BigDecimal value) {
            addCriterion("coal_gas =", value, "coalGas");
            return (Criteria) this;
        }

        public Criteria andCoalGasNotEqualTo(BigDecimal value) {
            addCriterion("coal_gas <>", value, "coalGas");
            return (Criteria) this;
        }

        public Criteria andCoalGasGreaterThan(BigDecimal value) {
            addCriterion("coal_gas >", value, "coalGas");
            return (Criteria) this;
        }

        public Criteria andCoalGasGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("coal_gas >=", value, "coalGas");
            return (Criteria) this;
        }

        public Criteria andCoalGasLessThan(BigDecimal value) {
            addCriterion("coal_gas <", value, "coalGas");
            return (Criteria) this;
        }

        public Criteria andCoalGasLessThanOrEqualTo(BigDecimal value) {
            addCriterion("coal_gas <=", value, "coalGas");
            return (Criteria) this;
        }

        public Criteria andCoalGasIn(List<BigDecimal> values) {
            addCriterion("coal_gas in", values, "coalGas");
            return (Criteria) this;
        }

        public Criteria andCoalGasNotIn(List<BigDecimal> values) {
            addCriterion("coal_gas not in", values, "coalGas");
            return (Criteria) this;
        }

        public Criteria andCoalGasBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coal_gas between", value1, value2, "coalGas");
            return (Criteria) this;
        }

        public Criteria andCoalGasNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coal_gas not between", value1, value2, "coalGas");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionIsNull() {
            addCriterion("natural_gas_liquefaction is null");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionIsNotNull() {
            addCriterion("natural_gas_liquefaction is not null");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionEqualTo(BigDecimal value) {
            addCriterion("natural_gas_liquefaction =", value, "naturalGasLiquefaction");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionNotEqualTo(BigDecimal value) {
            addCriterion("natural_gas_liquefaction <>", value, "naturalGasLiquefaction");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionGreaterThan(BigDecimal value) {
            addCriterion("natural_gas_liquefaction >", value, "naturalGasLiquefaction");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("natural_gas_liquefaction >=", value, "naturalGasLiquefaction");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionLessThan(BigDecimal value) {
            addCriterion("natural_gas_liquefaction <", value, "naturalGasLiquefaction");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionLessThanOrEqualTo(BigDecimal value) {
            addCriterion("natural_gas_liquefaction <=", value, "naturalGasLiquefaction");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionIn(List<BigDecimal> values) {
            addCriterion("natural_gas_liquefaction in", values, "naturalGasLiquefaction");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionNotIn(List<BigDecimal> values) {
            addCriterion("natural_gas_liquefaction not in", values, "naturalGasLiquefaction");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("natural_gas_liquefaction between", value1, value2, "naturalGasLiquefaction");
            return (Criteria) this;
        }

        public Criteria andNaturalGasLiquefactionNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("natural_gas_liquefaction not between", value1, value2, "naturalGasLiquefaction");
            return (Criteria) this;
        }

        public Criteria andCoalProductsIsNull() {
            addCriterion("coal_products is null");
            return (Criteria) this;
        }

        public Criteria andCoalProductsIsNotNull() {
            addCriterion("coal_products is not null");
            return (Criteria) this;
        }

        public Criteria andCoalProductsEqualTo(BigDecimal value) {
            addCriterion("coal_products =", value, "coalProducts");
            return (Criteria) this;
        }

        public Criteria andCoalProductsNotEqualTo(BigDecimal value) {
            addCriterion("coal_products <>", value, "coalProducts");
            return (Criteria) this;
        }

        public Criteria andCoalProductsGreaterThan(BigDecimal value) {
            addCriterion("coal_products >", value, "coalProducts");
            return (Criteria) this;
        }

        public Criteria andCoalProductsGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("coal_products >=", value, "coalProducts");
            return (Criteria) this;
        }

        public Criteria andCoalProductsLessThan(BigDecimal value) {
            addCriterion("coal_products <", value, "coalProducts");
            return (Criteria) this;
        }

        public Criteria andCoalProductsLessThanOrEqualTo(BigDecimal value) {
            addCriterion("coal_products <=", value, "coalProducts");
            return (Criteria) this;
        }

        public Criteria andCoalProductsIn(List<BigDecimal> values) {
            addCriterion("coal_products in", values, "coalProducts");
            return (Criteria) this;
        }

        public Criteria andCoalProductsNotIn(List<BigDecimal> values) {
            addCriterion("coal_products not in", values, "coalProducts");
            return (Criteria) this;
        }

        public Criteria andCoalProductsBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coal_products between", value1, value2, "coalProducts");
            return (Criteria) this;
        }

        public Criteria andCoalProductsNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coal_products not between", value1, value2, "coalProducts");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputIsNull() {
            addCriterion("energy_processing_output is null");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputIsNotNull() {
            addCriterion("energy_processing_output is not null");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputEqualTo(BigDecimal value) {
            addCriterion("energy_processing_output =", value, "energyProcessingOutput");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputNotEqualTo(BigDecimal value) {
            addCriterion("energy_processing_output <>", value, "energyProcessingOutput");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputGreaterThan(BigDecimal value) {
            addCriterion("energy_processing_output >", value, "energyProcessingOutput");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("energy_processing_output >=", value, "energyProcessingOutput");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputLessThan(BigDecimal value) {
            addCriterion("energy_processing_output <", value, "energyProcessingOutput");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputLessThanOrEqualTo(BigDecimal value) {
            addCriterion("energy_processing_output <=", value, "energyProcessingOutput");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputIn(List<BigDecimal> values) {
            addCriterion("energy_processing_output in", values, "energyProcessingOutput");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputNotIn(List<BigDecimal> values) {
            addCriterion("energy_processing_output not in", values, "energyProcessingOutput");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("energy_processing_output between", value1, value2, "energyProcessingOutput");
            return (Criteria) this;
        }

        public Criteria andEnergyProcessingOutputNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("energy_processing_output not between", value1, value2, "energyProcessingOutput");
            return (Criteria) this;
        }

        public Criteria andRecyclingIsNull() {
            addCriterion("recycling is null");
            return (Criteria) this;
        }

        public Criteria andRecyclingIsNotNull() {
            addCriterion("recycling is not null");
            return (Criteria) this;
        }

        public Criteria andRecyclingEqualTo(BigDecimal value) {
            addCriterion("recycling =", value, "recycling");
            return (Criteria) this;
        }

        public Criteria andRecyclingNotEqualTo(BigDecimal value) {
            addCriterion("recycling <>", value, "recycling");
            return (Criteria) this;
        }

        public Criteria andRecyclingGreaterThan(BigDecimal value) {
            addCriterion("recycling >", value, "recycling");
            return (Criteria) this;
        }

        public Criteria andRecyclingGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("recycling >=", value, "recycling");
            return (Criteria) this;
        }

        public Criteria andRecyclingLessThan(BigDecimal value) {
            addCriterion("recycling <", value, "recycling");
            return (Criteria) this;
        }

        public Criteria andRecyclingLessThanOrEqualTo(BigDecimal value) {
            addCriterion("recycling <=", value, "recycling");
            return (Criteria) this;
        }

        public Criteria andRecyclingIn(List<BigDecimal> values) {
            addCriterion("recycling in", values, "recycling");
            return (Criteria) this;
        }

        public Criteria andRecyclingNotIn(List<BigDecimal> values) {
            addCriterion("recycling not in", values, "recycling");
            return (Criteria) this;
        }

        public Criteria andRecyclingBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("recycling between", value1, value2, "recycling");
            return (Criteria) this;
        }

        public Criteria andRecyclingNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("recycling not between", value1, value2, "recycling");
            return (Criteria) this;
        }

        public Criteria andUnitHeadIsNull() {
            addCriterion("unit_head is null");
            return (Criteria) this;
        }

        public Criteria andUnitHeadIsNotNull() {
            addCriterion("unit_head is not null");
            return (Criteria) this;
        }

        public Criteria andUnitHeadEqualTo(String value) {
            addCriterion("unit_head =", value, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadNotEqualTo(String value) {
            addCriterion("unit_head <>", value, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadGreaterThan(String value) {
            addCriterion("unit_head >", value, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadGreaterThanOrEqualTo(String value) {
            addCriterion("unit_head >=", value, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadLessThan(String value) {
            addCriterion("unit_head <", value, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadLessThanOrEqualTo(String value) {
            addCriterion("unit_head <=", value, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadLike(String value) {
            addCriterion("unit_head like", value, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadNotLike(String value) {
            addCriterion("unit_head not like", value, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadIn(List<String> values) {
            addCriterion("unit_head in", values, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadNotIn(List<String> values) {
            addCriterion("unit_head not in", values, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadBetween(String value1, String value2) {
            addCriterion("unit_head between", value1, value2, "unitHead");
            return (Criteria) this;
        }

        public Criteria andUnitHeadNotBetween(String value1, String value2) {
            addCriterion("unit_head not between", value1, value2, "unitHead");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerIsNull() {
            addCriterion("statistical_control_officer is null");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerIsNotNull() {
            addCriterion("statistical_control_officer is not null");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerEqualTo(String value) {
            addCriterion("statistical_control_officer =", value, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerNotEqualTo(String value) {
            addCriterion("statistical_control_officer <>", value, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerGreaterThan(String value) {
            addCriterion("statistical_control_officer >", value, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerGreaterThanOrEqualTo(String value) {
            addCriterion("statistical_control_officer >=", value, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerLessThan(String value) {
            addCriterion("statistical_control_officer <", value, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerLessThanOrEqualTo(String value) {
            addCriterion("statistical_control_officer <=", value, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerLike(String value) {
            addCriterion("statistical_control_officer like", value, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerNotLike(String value) {
            addCriterion("statistical_control_officer not like", value, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerIn(List<String> values) {
            addCriterion("statistical_control_officer in", values, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerNotIn(List<String> values) {
            addCriterion("statistical_control_officer not in", values, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerBetween(String value1, String value2) {
            addCriterion("statistical_control_officer between", value1, value2, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andStatisticalControlOfficerNotBetween(String value1, String value2) {
            addCriterion("statistical_control_officer not between", value1, value2, "statisticalControlOfficer");
            return (Criteria) this;
        }

        public Criteria andFillFormByIsNull() {
            addCriterion("fill_form_by is null");
            return (Criteria) this;
        }

        public Criteria andFillFormByIsNotNull() {
            addCriterion("fill_form_by is not null");
            return (Criteria) this;
        }

        public Criteria andFillFormByEqualTo(String value) {
            addCriterion("fill_form_by =", value, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByNotEqualTo(String value) {
            addCriterion("fill_form_by <>", value, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByGreaterThan(String value) {
            addCriterion("fill_form_by >", value, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByGreaterThanOrEqualTo(String value) {
            addCriterion("fill_form_by >=", value, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByLessThan(String value) {
            addCriterion("fill_form_by <", value, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByLessThanOrEqualTo(String value) {
            addCriterion("fill_form_by <=", value, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByLike(String value) {
            addCriterion("fill_form_by like", value, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByNotLike(String value) {
            addCriterion("fill_form_by not like", value, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByIn(List<String> values) {
            addCriterion("fill_form_by in", values, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByNotIn(List<String> values) {
            addCriterion("fill_form_by not in", values, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByBetween(String value1, String value2) {
            addCriterion("fill_form_by between", value1, value2, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andFillFormByNotBetween(String value1, String value2) {
            addCriterion("fill_form_by not between", value1, value2, "fillFormBy");
            return (Criteria) this;
        }

        public Criteria andPhoneIsNull() {
            addCriterion("phone is null");
            return (Criteria) this;
        }

        public Criteria andPhoneIsNotNull() {
            addCriterion("phone is not null");
            return (Criteria) this;
        }

        public Criteria andPhoneEqualTo(String value) {
            addCriterion("phone =", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotEqualTo(String value) {
            addCriterion("phone <>", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneGreaterThan(String value) {
            addCriterion("phone >", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("phone >=", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLessThan(String value) {
            addCriterion("phone <", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLessThanOrEqualTo(String value) {
            addCriterion("phone <=", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLike(String value) {
            addCriterion("phone like", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotLike(String value) {
            addCriterion("phone not like", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneIn(List<String> values) {
            addCriterion("phone in", values, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotIn(List<String> values) {
            addCriterion("phone not in", values, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneBetween(String value1, String value2) {
            addCriterion("phone between", value1, value2, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotBetween(String value1, String value2) {
            addCriterion("phone not between", value1, value2, "phone");
            return (Criteria) this;
        }

        public Criteria andStateIsNull() {
            addCriterion("state is null");
            return (Criteria) this;
        }

        public Criteria andStateIsNotNull() {
            addCriterion("state is not null");
            return (Criteria) this;
        }

        public Criteria andStateEqualTo(Integer value) {
            addCriterion("state =", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotEqualTo(Integer value) {
            addCriterion("state <>", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThan(Integer value) {
            addCriterion("state >", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("state >=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThan(Integer value) {
            addCriterion("state <", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThanOrEqualTo(Integer value) {
            addCriterion("state <=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateIn(List<Integer> values) {
            addCriterion("state in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotIn(List<Integer> values) {
            addCriterion("state not in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateBetween(Integer value1, Integer value2) {
            addCriterion("state between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotBetween(Integer value1, Integer value2) {
            addCriterion("state not between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}